Users of both wired devices (e.g., plain old telephone services (“POTS”) devices) and wireless devices (e.g., mobile phones) commonly engage in voice communications. In a typical application, a user will place a call to another user, such as by dialing the phone number of the other user. In a POTS system, the call is completed over a dedicated circuit switched connection between the two devices. That is, the circuited switched connection is used exclusively to carry voice traffic for the connection between the two devices; it is not used to carry voice or data for other connections. Once the connection is established, the two users can engage in voice communications.
As networks have evolved, the traditional circuit switched connection has been replaced with packet based communications. In packet based communications (e.g., Voice over Internet Protocol (“VoIP”)), digital packets are used to carry the voice traffic between the devices rather than the analog methods that are used in POTS systems. One advantage of packet based communications is that it is no longer necessary to establish a dedicated connection between the two devices. Thus, in a packet based communications, bandwidth that is not used for the call can be used to carry voice or data for other connections.
A dedicated circuit switched connection continuously transmits voice traffic even when the two users are not talking. As POTS users experience, continuous transmission between the devices this results in a certain amount of background noise that is always present on the line. Thus, the users typically never experience true silence on the line. For packet based communications, however, when the users are not talking, packets are not sent between the devices and the bandwidth can be used for other applications. This, however, can result in a stark silence on the line, which causes many users to questions whether the connection is still active.
In order to combat this problem, many devices now purposefully generate comfort noise to replace the silence that the user might otherwise periodically experience during the connection. In advanced applications, the device attempts to generate comfort noise that not only models the open line sound associated with circuit switched connections, but also imitates background noise that is audible in the background at the speaker's end. The background noise might include vacuums, high pitched sounds, recurring noises or a myriad of other sounds.
Current applications for generating comfort noise oftentimes must employ very high order filters in order to accurately model the background noise and to generate comfort noise that spectrally matches the background noise. Such high order filters not only increase the complexity of the applications for generating comfort noise but also increase their computational cost. That is, these applications might use a larger amount of the device's available computational resources and power. This might not only slow down the speed at which the comfort noise itself can be generated but might also slow down other applications running on the device as well.
Therefore, there exists a need for improved methods and systems for generating comfort noise.